Methods and systems for hyper-spectral systems

ABSTRACT

A hyperspectral analysis computer device is provided. The hyperspectral analysis computer device includes at least one processor in communication with at least one memory device. The hyperspectral analysis computer device is configured to store a plurality of spectral analysis data, receive at least one background item and at least one item to be detected from a user, generate one or more spectral bands for analysis based on the at least one background item, the at least one item to be detected, and the stored plurality of spectral analysis data, receive one or more mission parameters from the user, and determine a probability of success based on the one or more mission parameters and the generated one or more spectral bands.

BACKGROUND

The field of the invention relates generally to analyzing hyperspectralimagery, and more specifically, to designing and training hyperspectralsystems.

Hyperspectral systems may be used for a large variety of missions,including, but not limited to, search and rescue, forestry, natural gasexploration, geology, agricultural analysis, and archeology. Prior todeployment, a hyperspectral system is trained to recognize items ofinterest in contrast to background or environment details. In manycases, this training is performed by having the hyperspectral systemanalyze a large plurality of hyperspectral images to learn how todifferentiate pixels associated with items of interest from pixelsassociated with the background of the image. For example, ahyperspectral system may be trained to be able to recognize a tent incontrast to the surrounding forest. Depending on the mission, thehyperspectral system requires different training to recognize importantfeatures in contrast to background details. Proper training of ahyperspectral system may be expensive both in setting up and in trainingtime. Furthermore, without proper design, the hyperspectral system mayrequire additional training to meet the requirements of the mission.

BRIEF DESCRIPTION

A hyperspectral analysis computer device is provided. The hyperspectralanalysis computer device includes at least one processor incommunication with at least one memory device. The hyperspectralanalysis computer device is configured to store a plurality of spectralanalysis data, receive at least one background item and at least oneitem to be detected from a user, generate one or more spectral bands foranalysis based on the at least one background item, the at least oneitem to be detected, and the stored plurality of spectral analysis data,receive one or more mission parameters from the user, and determine aprobability of success based on the one or more mission parameters andthe generated one or more spectral bands.

In another aspect, a method for analyzing hyperspectral imagery isprovided. The method is implemented using a hyperspectral analysiscomputer device. The hyperspectral analysis computer device includes aprocessor in communication with a memory. The method includes storing,in the memory, a plurality of spectral analysis data, receiving, from auser, at least one background item and at least one item to be detected,generating, by the processor, one or more spectral bands for analysisbased on the at least one background item, the at least one item to bedetected, and the stored plurality of spectral analysis data, receiving,from the user, one or more mission parameters, and determining, by theprocessor, a probability of success based on the one or more missionparameters and the generated one or more spectral bands.

In yet another aspect, at least one non-transitory computer-readablestorage media having computer-executable instructions embodied thereonis provided. When executed by at least one processor, thecomputer-executable instructions cause the processor to store aplurality of spectral analysis data, receive, from a user, at least onebackground item and at least one item to be detected, generate one ormore spectral bands for analysis based on the at least one backgrounditem, the at least one item to be detected, and the stored plurality ofspectral analysis data, receive, from the user, one or more missionparameters, and determine a probability of success based on the one ormore mission parameters and the generated one or more spectral bands.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1-6 show example embodiments of the methods and systems describedherein.

FIG. 1 is a schematic diagram illustrating an example system fordesigning and training hyperspectral systems.

FIG. 2 is a simplified block diagram of an example hyperspectralanalysis system used for designing and training hyperspectral systems inaccordance with FIG. 1.

FIG. 3 illustrates an example configuration of a client system shown inFIG. 2, in accordance with one embodiment of the present disclosure.

FIG. 4 illustrates an example configuration of a server system shown inFIG. 2, in accordance with one embodiment of the present disclosure.

FIG. 5 is a flow chart of a process for analyzing hyperspectral systemsusing the system shown in FIG. 2.

FIG. 6 is a diagram of components of one or more example computingdevices that may be used in the system shown in FIG. 2.

Unless otherwise indicated, the drawings provided herein are meant toillustrate features of embodiments of this disclosure. These featuresare believed to be applicable in a wide variety of systems comprisingone or more embodiments of this disclosure. As such, the drawings arenot meant to include all conventional features known by those ofordinary skill in the art to be required for the practice of theembodiments disclosed herein.

DETAILED DESCRIPTION

The implementations described herein relate to hyperspectral imagery,and, more specifically, to designing and training hyperspectral systems.More specifically, a hyperspectral analysis (“HA”) computer device (alsoknown as a HA server) analyzes hyperspectral images to detect items ofinterest. The HA computer device utilizes machine learning techniques toanalyze a plurality of predetermined images to determine the spectralbands most appropriate to both the potential items of interest and thebackground details.

Described herein are computer systems such as the HA computer devicesand related computer systems. As described herein, all such computersystems include a processor and a memory. However, any processor in acomputer device referred to herein may also refer to one or moreprocessors wherein the processor may be in one computing device or in aplurality of computing devices acting in parallel. Additionally, anymemory in a computer device referred to herein may also refer to one ormore memories wherein the memories may be in one computing device or ina plurality of computing devices acting in parallel.

As used herein, a processor may include any programmable systemincluding systems using micro-controllers, reduced instruction setcircuits (RISC), application specific integrated circuits (ASICs), logiccircuits, and any other circuit or processor capable of executing thefunctions described herein. The above examples are not intended to limitin any way the definition and/or meaning of the term “processor.”

As used herein, the term “database” may refer to either a body of data,a relational database management system (RDBMS), or to both. As usedherein, a database may include any collection of data includinghierarchical databases, relational databases, flat file databases,object-relational databases, object oriented databases, and any otherstructured collection of records or data that is stored in a computersystem. The above examples are not intended to limit in any way thedefinition and/or meaning of the term database. Examples of RDBMS'sinclude, but are not limited to, Oracle® Database, MySQL, IBM® DB2,Microsoft® SQL Server, Sybase®, and PostgreSQL. However, any databasemay be used that enables the systems and methods described herein.(Oracle is a registered trademark of Oracle Corporation, Redwood Shores,Calif.; IBM is a registered trademark of International Business MachinesCorporation, Armonk, N.Y.; Microsoft is a registered trademark ofMicrosoft Corporation, Redmond, Wash.; and Sybase is a registeredtrademark of Sybase, Dublin, Calif.)

In one embodiment, a computer program is provided, and the program isembodied on a computer readable medium. In an example embodiment, thesystem is executed on a single computer system, without requiring aconnection to a server computer. In a further embodiment, the system isbeing run in a Windows® environment (Windows is a registered trademarkof Microsoft Corporation, Redmond, Wash.). In yet another embodiment,the system is run on a mainframe environment and a UNIX® serverenvironment (UNIX is a registered trademark of X/Open Company Limitedlocated in Reading, Berkshire, United Kingdom). The application isflexible and designed to run in various different environments withoutcompromising any major functionality. In some embodiments, the systemincludes multiple components distributed among a plurality of computingdevices. One or more components may be in the form ofcomputer-executable instructions embodied in a computer-readable medium.

As used herein, an element or step recited in the singular and precededwith the word “a” or “an” should be understood as not excluding pluralelements or steps, unless such exclusion is explicitly recited.Furthermore, references to “example embodiment” or “one embodiment” ofthe present disclosure are not intended to be interpreted as excludingthe existence of additional embodiments that also incorporate therecited features.

As used herein, the terms “software” and “firmware” are interchangeable,and include any computer program stored in memory for execution by aprocessor, including RAM memory, ROM memory, EPROM memory, EEPROMmemory, and non-volatile RAM (NVRAM) memory. The above memory types areexamples only and thus, are not limiting as to the types of memoryusable for storage of a computer program.

Furthermore, as used herein, the term “real-time” refers to at least oneof the time of occurrence of the associated events, the time ofmeasurement and collection of predetermined data, the time to processthe data, and the time of a system response to the events and theenvironment. In the embodiments described herein, these activities andevents occur substantially instantaneously.

The systems and processes are not limited to the specific embodimentsdescribed herein. In addition, components of each system and eachprocess can be practiced independent and separate from other componentsand processes described herein. Each component and process also can beused in combination with other assembly packages and processes.

FIG. 1 is a schematic diagram illustrating an example system 100 fordesigning and training hyperspectral systems.

A hyperspectral system collects and processes information from acrossthe electromagnetic spectrum. The hyperspectral system is configured toobtain the spectrum for the pixels in the image of a scene, with thepurpose of finding objects, identifying materials, or detectingprocesses. Example hyperspectral system may include, but are not limitedto, one of a push broom scanning and snapshot hyperspectral imaging.

In push broom scanning, the camera images the scene line by line usingthe “push broom” scanning mode. One narrow spatial line in the scene isimaged at a time, and this line is split into its spectral componentsbefore reaching a sensor array. When the sensor array is atwo-dimensional (2D) sensor array, one dimension is used for spectralseparation and the second dimension is used for imaging in one spatialdirection. The second spatial dimension in the scene arises fromscanning the camera over the scene (e.g., aircraft movement). The resultcan be seen as one 2D image for each spectral channel. Alternativelyevery pixel in the image contains one full spectrum. In snapshothyperspectral imaging, the camera generates an image of the scene at aspecific point in time.

The human eye sees color of visible light in mostly three bands (red,green, and blue), spectral imaging divides the spectrum into many morebands. This technique of dividing images into bands can be extendedbeyond the visible. In hyperspectral imaging, the recorded spectra havefine wavelength resolution and cover a wide range of wavelengths. Foreach pixel in an image, a hyperspectral camera acquires the lightintensity (radiance) for a large number (typically a few tens to severalhundred) of contiguous spectral bands. Every pixel in the image thuscontains a continuous spectrum (in radiance or reflectance) and can beused to characterize the objects in the scene with great precision anddetail.

Hyperspectral cameras provide significantly more detailed informationabout the scene than a normal color camera, which only acquires threedifferent spectral channels corresponding to the visual primary colorsred, green and blue. Hence, hyperspectral imaging leads to a vastlyimproved ability to classify the objects in the scene based on theirspectral properties. This ability is very important in circumstances ofdistinguishing or identifying items of interest that may or may not bein a hyperspectral image. Hyperspectral analysis allows for theidentification of items (or subjects) of interest in backgrounds thatmay include ground cover (such as cultivated and uncultivated fields,brush, forests, and deserts), geographic features (such as rivers,valleys, mountains, and plains), and human artifacts (such as isolatedbuildings, bridges, highways, and suburban and urban structures).

In the example embodiments, hyperspectral camera is placed on anairborne platform for remote sensing, such as an aircraft or satellite.The hyperspectral system includes multiple attributes that affect theability of the hyperspectral system to collect data and images. Theseattributes include, but are not limited to, aperture size, altitude,off-nadir angle, and spectral resolution.

In the example embodiment, system includes a hyperspectral analysis(“HA”) computer device 102. HA computer device 102 is configured toreceive a control data set 104. In the example embodiment, control dataset 104 includes information about one or more missions for ahyperspectral system. In some embodiments, the hyperspectral system isdesignated for the mission. In other embodiments, the hyperspectralsystem is in the design phase. In the example embodiment, theinformation includes one or more parameters of the hyperspectral system.The information in control data set 104 may also include, but is notlimited to, minimum detectable or identifiable quantity settings,probability of false alarm, and probability of detection limits, noiseoperability requirements, focal plane array operability requirements,contamination requirements, seasonal and background performancedependencies, and day vs. night performance requirements. Control dataset 104 also may include information about the items of interest (alsoknown as items to be detected). This information about the item(s) ofinterest may include material composition, potential thermalcharacteristics, and other information necessary to model said item(s)of interest. Control data set 104 may also include further informationabout the location(s) that may be analyzed, such as, but not limited to,terrain type, climate information, geographic locations, and otherinformation necessary to model the background of the images that theitem(s) of interest will be compared against.

HA computer device 102 receives control data set 104 and uses controldata set 104 to analyze the hyperspectral system in question. In theexample embodiment, HA computer device 102 includes, or is incommunication with a database, that includes a plurality ofhyperspectral analysis data. This hyperspectral analysis data mayinclude, but is not limited to, Fourier transform imaging spectroscopy(FTIS) models, dispersive sensor models, moderate resolution atmospherictransmission models, bands, and geometry, a plurality of previouslymodeled terrain and urban materials, and a plurality of previouslymodeled gaseous and solid targets. HA computer device 102 uses thestored hyperspectral analysis data to perform the embodiments describedherein.

Based on information in control data set 104, HA computer device 102determines the atmospherics 106 and terrain 108 associated with controldata set 104. For example, terrain 108 may include, but is not limitedto ground cover (such as cultivated and uncultivated fields, brush,forests, and deserts), geographic features (such as rivers, valleys,mountains, and plains), and human artifacts (such as isolated buildings,bridges, highways, and suburban and urban structures). HA computerdevice 102 also determines target models 110 associated with controldata set 104. For example, if the mission in control data set 104includes locating lost hikers in a forest in Washington State, then HAcomputer device 102 locates atmospherics 106 and terrain 108 data fromthe hyperspectral analysis data associated with that state. HA computerdevice 102 also determines the target models 110 for recognizing hikersin a forest environment based on data about the clothing and gear thatthe hikers may have taken.

HA computer device 102 determines the end-members associated with thedetermined atmospherics 106 (also known as atmospheric conditions) andterrain 108. End-members are spectra that are chosen to represent puresurface materials in a spectral image. In the example embodiment, HPcomputer device 102 stores a plurality of data including end-membersassociated with different atmospherics 106, terrain 108, and materials.HA computer device 102 uses those end-members to mix a plurality ofhyperspectral images without target data 112 for training thehyperspectral system. In the example embodiment, the plurality ofhyperspectral images are pixelated images with specific statisticalproperties (spectral distribution). Within each image, HA computerdevice 102 creates individual pixels with specific statisticalproperties, based on known spectral properties of the items of interest,relevant terrains, atmospheric, and lighting conditions. In someembodiments, the images are collections of pixels instead of syntheticimages that include realistic ground cover, geographic features, and/orhuman artifacts.

In the example embodiment, HA computer device 102 determines end-membersassociated with target models 110. HA computer device 102 combines thoseend-members with some of the plurality of hyperspectral images withouttarget data 112 to generate a plurality of hyperspectral images withtarget data 114. HA computer device 102 then applies sensor and noisemodels 116 to the two sets of hyperspectral images 112 and 114 tosimulate field conditions. In the example embodiment, sensor and noisemodels 116 include but are not limited to, Fourier transform imagingspectroscopy (FTIS) models and dispersive models. Sensor and noisemodels 116 simulate data errors and other interference in the reading ofa hyperspectral system, when the hyperspectral system is in use.

More specifically, HA computer device 102 generates the plurality ofhyperspectral images by generating a distribution of simulatedindividual pixel measurements based on random mixes of end-members. Thedistribution is based on the mission parameters, so that the mixes ofend-members simulate the differences between pixels that may be seen inan actual mission with those mission parameters. HA computer device 102varies the random mixes so that some combinations are more likely insome of the plurality of hyperspectral images than others based on themission parameters. Instead of generating a hypercube of an image scene,HA computer device 102 generates the plurality of hyperspectral imagesthat include the random distribution of pixels to allow for training ofa hyperspectral system in a more efficient manner than having togenerate an actual three dimensional (3D) scene(spatial×spatial×wavelength). Instead, HA computer device 102 canquickly generate the plurality of hyperspectral images that can includea variety of conditions and combinations of pixels that can be used totest hyperspectral systems.

In some other embodiments, HA computer device 102 uses a previouslygenerated hyperspectral image as an input in generating the plurality ofhyperspectral images. Other potential inputs used to generate theplurality of hyperspectral images include, but are not limited to, oneor more images of a similar environment, one or more images including asimilar item of interest, and one or more images previously captured bya hyperspectral system. In these embodiments, HA computer device 102applies the input images to generate the distribution of simulatedindividual pixel measurements based on random mixes of end-members.

In some further embodiments, HA computer device 102 generates theplurality of hyperspectral images to simulate a hypercube scene. In afirst example, HA computer device 102 applies an appropriate randomdistribution of pixels to a pre-existing hypercube scene. In theseembodiments, HA computer device 102 applies the simulated hypercubescene to generate the distribution of simulated individual pixelmeasurements based on random mixes of end-members.

HA computer device 102 applies algorithms and exploitations 118 to thetwo sets of hyperspectral images 112 and 114 to determine performancemetrics 120. Examples of algorithms and exploitation include, but arenot limited to, best linear unbiased estimation and orthogonal subspaceprojection. Examples of performance metrics include, but are not limitedto, signal-to-noise ratio (SNR), signal compression ratio (SCR),probability of detection (Pd), probability of false alarms (Pfa),minimum detectable quantity (MDQ), and minimum identifiable quantity(MIQ). In the example embodiment, HA computer device 102 generates dataplots and graphics 122 based on performance metrics 120. In the exampleembodiment, HA computer device 102 outputs performance metrics 120 anddata plots and graphics 122 to a user.

In one embodiment, HA computer device 102 receives the missionparameters and requirements in control data set 104. HA computer device102 determines atmospherics 106, terrain 108, and target models 110based on control data set 104. HA computer device 102 generates aplurality of hyperspectral images without target data 112 and aplurality of hyperspectral images with target data 114 to apply tohyperspectral system. Based on the attributes of hyperspectral system,HA computer device 102 simulates the behavior of hyperspectral system inanalyzing both of the pluralities of hyperspectral images 112 and 114 byapplying sensor and noise models 116 to the pluralities of hyperspectralimages 112 and 114. Based on the simulation, HA computer device 102 usesalgorithms and exploitations 118 to determine performance metrics 120for the hyperspectral system for the mission parameters and requirementsin control data set 104. Examples of mission parameters include, but arenot limited to minimum aperture size, waveband required, requiredwavelength range, minimum spectral resolution, integration time, groundsample distances, day or night operation, and maximum off-nadir angle.

In still further embodiments, HA computer device 102 transmits theplurality of images without target data 112 and a plurality of imageswith target data 114 to the hyperspectral system and instructs thehyperspectral system to analyze those images. The hyperspectral systemanalyzes each image and identifies where the hyperspectral systemrecognized an item of interest. The hyperspectral system reports itsresults to HA computer device 102. HA computer device 102 analyzes theresults of the hyperspectral systems analysis to determine the accuracyof the hyperspectral system.

FIG. 2 is a simplified block diagram of an example hyperspectralanalysis system 200 used for designing and training hyperspectralsystems 225. In the example embodiment, system 200 may be used fordesigning and training hyperspectral systems 225 in preparation for oneor more missions. As described below in more detail, a hyperspectralanalysis (“HA”) computer device 210, which is similar to HA computerdevice 102 (shown in FIG. 1), is configured to store a plurality ofspectral analysis data. HA computer device 210 is also configured toreceive, from a user, at least one background item and at least one itemto be detected. HA computer device 210 is further configured to generateone or more spectral bands for analysis based on the at least onebackground item, the at least one item to be detected, and the storedplurality of spectral analysis data. Moreover, HA computer device 210 isconfigured to receive, from the user, one or more mission parameters. Inaddition, HA computer device 210 is configured to determine aprobability of success based on the one or more mission parameters andthe generated one or more spectral bands.

In the example embodiment, user computer devices 205 are computers thatinclude a web browser or a software application to enable user computerdevices 205 to access HA computer device 210 using the Internet or anetwork. More specifically, user computer devices 205 arecommunicatively coupled to HA computer device 210 through manyinterfaces including, but not limited to, at least one of a network,such as the Internet, a local area network (LAN), a wide area network(WAN), or an integrated services digital network (ISDN), adial-up-connection, a digital subscriber line (DSL), a cellular phoneconnection, and a cable modem. User computer devices 205 can be anydevice capable of accessing the Internet, or another network, including,but not limited to, a desktop computer, a laptop computer, a personaldigital assistant (PDA), a cellular phone, a smartphone, a tablet, aphablet, or other web-based connectable equipment. In the exampleembodiment, a user uses a user computer device 205 to enter missionparameters and receive design information and spectral bands for thedevice associated with the mission.

HA computer device 210 includes one or more computer devices configuredto perform as described herein. In the example embodiment, HA computerdevice 210 includes one or more server systems configured to communicatewith user computer device 205 and hyperspectral systems 225. In someembodiments, HA computer device 210 is remote from at least one of usercomputer device 205, database server 215, and hyperspectral system 225and communicates with the remote computer device through the Internet.More specifically, HA computer device 210 is communicatively coupled toInternet through many interfaces including, but not limited to, at leastone of a network, such as a local area network (LAN), a wide areanetwork (WAN), or an integrated services digital network (ISDN), adial-up-connection, a digital subscriber line (DSL), a cellular phoneconnection, and a cable modem. HA computer device 210 can be any devicecapable of accessing the Internet, or another network, including, butnot limited to, a desktop computer, a laptop computer, a personaldigital assistant (PDA), a cellular phone, a smartphone, a tablet, aphablet, or other web-based connectable equipment.

A database server 215 is communicatively coupled to a database 220 thatstores data. In one embodiment, database 220 includes missionparameters, spectral bands, probability of detection, and deviceattributes. In the example embodiment, database 220 is stored remotelyfrom HA computer device 210. In some embodiments, database 220 isdecentralized. In the example embodiment, a person can access database220 via user computer devices 205 by logging onto HA computer device210, as described herein.

Hyperspectral systems 225 include hyperspectral cameras and/or otherdevices capable of taking hyperspectral images. Hyperspectral systems225 may include a plurality of optics that allow the system to performas described herein. In the example embodiment, hyperspectral systems225 are in communication with HA computer device 210. More specifically,hyperspectral systems 225 are communicatively coupled to HA computerdevice 210 through many interfaces including, but not limited to, atleast one of the Internet, a network, such as a local area network(LAN), a wide area network (WAN), or an integrated services digitalnetwork (ISDN), a dial-up-connection, a digital subscriber line (DSL), acellular phone connection, and a cable modem. Hyperspectral system 225collects and processes information from across the electromagneticspectrum. Hyperspectral system 225 is configured to obtain the spectrumfor each pixel in the image of a scene, with the purpose of findingobjects, identifying materials, or detecting processes. Examplehyperspectral system 225 may include, but are not limited to, one of apush broom scanning and snapshot hyperspectral imaging.

FIG. 3 illustrates an example configuration of a client system shown inFIG. 2, in accordance with one embodiment of the present disclosure.User computer device 302 is operated by a user 301. User computer device302 may include, but is not limited to, user computer device 205 andhyperspectral system 225 (both shown in FIG. 2). User computer device302 includes a processor 305 for executing instructions. In someembodiments, executable instructions are stored in a memory area 310.Processor 305 may include one or more processing units (e.g., in amulti-core configuration). Memory area 310 is any device allowinginformation such as executable instructions and/or transaction data tobe stored and retrieved. Memory area 310 may include one or morecomputer-readable media.

User computer device 302 also includes at least one media outputcomponent 315 for presenting information to user 301. Media outputcomponent 315 is any component capable of conveying information to user301. In some embodiments, media output component 315 includes an outputadapter (not shown) such as a video adapter and/or an audio adapter. Anoutput adapter is operatively coupled to processor 305 and operativelycoupleable to an output device such as a display device (e.g., a cathoderay tube (CRT), liquid crystal display (LCD), light emitting diode (LED)display, or “electronic ink” display) or an audio output device (e.g., aspeaker or headphones). In some embodiments, media output component 315is configured to present a graphical user interface (e.g., a web browserand/or a client application) to user 301. A graphical user interface mayinclude, for example, analysis of one or more hyperspectral images. Insome embodiments, user computer device 302 includes an input device 320for receiving input from user 301. User 301 may use input device 320 to,without limitation, select and/or enter one or more mission parametersor device parameters. Input device 320 may include, for example, akeyboard, a pointing device, a mouse, a stylus, a touch sensitive panel(e.g., a touch pad or a touch screen), a gyroscope, an accelerometer, aposition detector, a biometric input device, and/or an audio inputdevice. A single component such as a touch screen may function as bothan output device of media output component 315 and input device 320.

User computer device 302 may also include a communication interface 325,communicatively coupled to a remote device such as HA computer device210 (shown in FIG. 2). Communication interface 325 may include, forexample, a wired or wireless network adapter and/or a wireless datatransceiver for use with a mobile telecommunications network.

Stored in memory area 310 are, for example, computer-readableinstructions for providing a user interface to user 301 via media outputcomponent 315 and, optionally, receiving and processing input from inputdevice 320. The user interface may include, among other possibilities, aweb browser and/or a client application. Web browsers enable users, suchas user 301, to display and interact with media and other informationtypically embedded on a web page or a website from HA computer device210. A client application allows user 301 to interact with, for example,HA computer device 210. For example, instructions may be stored by acloud service and the output of the execution of the instructions sentto the media output component 315.

FIG. 4 illustrates an example configuration of a server system shown inFIG. 2, in accordance with one embodiment of the present disclosure.Server computer device 401 may include, but is not limited to, databaseserver 215 and HA computer device 210 (both shown in FIG. 2). Servercomputer device 401 also includes a processor 405 for executinginstructions. Instructions may be stored in a memory area 410. Processor405 may include one or more processing units (e.g., in a multi-coreconfiguration).

Processor 405 is operatively coupled to a communication interface 415such that server computer device 401 is capable of communicating with aremote device such as another server computer device 401, user computerdevice 205, hyperspectral system 225, or HA computer device 210 (allshown in FIG. 2). For example, communication interface 415 may receiverequests from user computer devices 205 via the Internet.

Processor 405 may also be operatively coupled to a storage device 434.Storage device 434 is any computer-operated hardware suitable forstoring and/or retrieving data, such as, but not limited to, dataassociated with database 220 (shown in FIG. 2). In some embodiments,storage device 434 is integrated in server computer device 401. Forexample, server computer device 401 may include one or more hard diskdrives as storage device 434. In other embodiments, storage device 434is external to server computer device 401 and may be accessed by aplurality of server computer devices 401. For example, storage device434 may include a storage area network (SAN), a network attached storage(NAS) system, and/or multiple storage units such as hard disks and/orsolid state disks in a redundant array of inexpensive disks (RAID)configuration.

In some embodiments, processor 405 is operatively coupled to storagedevice 434 via a storage interface 420. Storage interface 420 is anycomponent capable of providing processor 405 with access to storagedevice 434. Storage interface 420 may include, for example, an AdvancedTechnology Attachment (ATA) adapter, a Serial ATA (SATA) adapter, aSmall Computer System Interface (SCSI) adapter, a RAID controller, a SANadapter, a network adapter, and/or any component providing processor 405with access to storage device 434.

Processor 405 executes computer-executable instructions for implementingaspects of the disclosure. In some embodiments, processor 405 istransformed into a special purpose microprocessor by executingcomputer-executable instructions or by otherwise being programmed. Forexample, processor 405 is programmed with the instructions such as areillustrated in FIG. 5.

FIG. 5 is a flow chart of a process 500 for analyzing hyperspectralsystems 225 using system 200 (shown in FIG. 2). In the exampleembodiment, process 500 is performed by HA computer device 210 (shown inFIG. 2).

In the example embodiment, HA computer device 210 stores 505 a pluralityof spectral analysis data. In the example embodiment, the spectralanalysis data includes, but is not limited to, Fourier transform imagingspectroscopy (FTIS) models, dispersive sensor models, moderateresolution atmospheric transmission models, bands, and geometry, aplurality of previously modeled terrain and urban materials, and aplurality of previously modeled gaseous and solid targets. In someembodiments, the spectral analysis data is stored in database 220 (shownin FIG. 2).

In the example embodiment, HA computer device 210 receives 510 at leastone background item and at least one item to be detected from a user. Insome embodiments, HA computer device 210 receives 510 this data incontrol data set 104 (shown in FIG. 1). In other embodiments, HAcomputer device 210 receives 510 this data directly from user. The atleast one background item may include terrain information, terrain type,climate information, geographic locations, and other informationnecessary to model the background of the images that the item(s) ofinterest will be compared against. Furthermore, background may includeground cover (such as cultivated and uncultivated fields, brush,forests, and deserts), geographic features (such as rivers, valleys,mountains, and plains), and human artifacts (such as isolated buildings,bridges, highways, and suburban and urban structures). In someembodiments, the at least one item to be detected includes informationabout the item(s) of interest, such as material composition, potentialthermal characteristics, and other information necessary to model saiditem(s) of interest. In other embodiments, the at least one item to bedetected includes a name or type. HA computer device 210 queriesdatabase 220 to retrieve data about modeling the at least one item to bedetected.

In the example embodiment, HA computer device 210 generates 515 one ormore spectral bands for analysis based on the at least one backgrounditem, the at least one items to be detected, and the store plurality ofspectral analysis data.

HA computer device 210 receives 520 one or more mission parameters fromthe user. In some embodiments, HA computer device 210 receives 520 thisdata in control data set 104. In other embodiments, HA computer device210 receives 520 this data directly from the user. In the exampleembodiment, the one or more mission parameters includes at least one ofa maximum false alarm rate, a probability of detection, a missionaltitude, an aperture size, an off-nadir angle, a spectral resolution,minimum aperture size, waveband required, required wavelength range,minimum spectral resolution, integration time, ground sample distances,day or night operation, and maximum off-nadir angle.

HA computer device 210 determines 525 a probability of success for themission based on the one or more mission parameters and the generatedone or more spectral bands. HA computer device 210 outputs theprobability of success to the user.

In some embodiments, HA computer device 210 determines a probability offalse alarms and a probability of detection based on the one or moremission parameters and the generated one or more spectral bands. Falsealarms are where hyperspectral system 225 identifies an item of interestwhere there is none, also known as a false positive. Detection is wherehyperspectral system 225 accurately identifies an item of interest.

In some embodiments, HA computer device 210 determines at least one ofmission altitude, aperture size, off-nadir angle, and spectralresolution based on the probability of success, the one or more missionparameters, and the generated one or more spectral bands. For example, amission to try to detect missing hikers in Indiana State Forest isplanned. The hyperspectral system 225 that is planning to be used isknown and will be mounted on an airplane. To achieve a probability ofdetecting the hikers, HA computer device 210 calculates that the planeneeds to fly at 25,000 feet over the forest. In another example, ahyperspectral system 225 is planned on a satellite for monitoringagriculture in Missouri. Based on the planned mission and knownparameters of the system, HA computer device 210 calculates that theaperture should be 2 meters. In a further example, the user is able tochange attributes of proposed hyperspectral system 225 to determineincreased performance of hyperspectral system 225.

In a further embodiment, HA computer device 102 determines a candidatehyperspectral system 225 for a specific mission. In this embodiment, HAcomputer device 102 receives the attributes of a plurality ofhyperspectral systems 225. HA computer device 102 also receives missionparameters for a specific mission or set of missions of interest. Thesemission parameters may include, but are not limited to, minimum aperturesize, waveband required, required wavelength range, minimum spectralresolution, integration time, ground sample distances, day or nightoperation, and maximum off-nadir angle. Using the mission parameters, HAcomputer device 102 is able to determine which of the plurality ofhyperspectral systems 225 fits within the mission parameters.Furthermore, HA computer device 102 is also able to calculate theprobability of success for the determine hyperspectral system 225. Inthis environment, HA computer device 102 calculates other operationalvalues for the mission, such as altitude. This allows a user to selectan appropriate hyperspectral system 225 for a mission, when there are aplurality of hyperspectral systems 225 with different parameters.

In still a further environment, HA computer device 102 receives missionparameters for one or more missions of interest. HA computer device 102calculates the required parameters of a hyperspectral system 225 tocomplete the mission to with the desired probability of success. Thisallows the user to determine required design parameters of ahyperspectral system 225, such as in the design phase of a system.

In some embodiments, HA computer device 102 generates a plurality ofimages 112 and 114 that each contain a plurality of random pixelmixtures associated with the at least one background item to train aprogram to recognize the at least one item to detect.

FIG. 6 is a diagram 600 of components of one or more example computingdevices that may be used in system 200 shown in FIG. 2. In someembodiments, computing device 610 is similar to HA computer device 210(shown in FIG. 2). Database 620 may be coupled with several separatecomponents within computing device 610, which perform specific tasks. Inthis embodiment, database 620 includes mission parameters 622, spectralbands 624, probability of detection 626, and device attributes 628. Insome embodiments, database 620 is similar to database 220 (shown in FIG.2).

Computing device 610 includes database 620, as well as data storagedevices 630. Computing device 610 also includes a communicationcomponent 640 for receiving 510 at least one background item andreceiving 520 one or more mission parameters (both shown in FIG. 5).Computing device 610 also includes a generating component 650 forgenerating 515 one or more spectral bands (shown in FIG. 5). Computingdevice 610 further includes a determining component 660 for determining525 a probability of success (shown in FIG. 5). A processing component670 assists with execution of computer-executable instructionsassociated with the system.

A processor or a processing element may be trained using supervised orunsupervised machine learning, and the machine learning program mayemploy a neural network, which may be a convolutional neural network, adeep learning neural network, or a combined learning module or programthat learns in two or more fields or areas of interest. Machine learningmay involve identifying and recognizing patterns in existing data inorder to facilitate making predictions for subsequent data. Models maybe created based upon example inputs in order to make valid and reliablepredictions for novel inputs.

Additionally or alternatively, the machine learning programs may betrained by inputting sample data sets or certain data into the programs,such as image data, previous hyperspectral analysis data, materialsdata, and other data. The machine learning programs may utilize deeplearning algorithms that may be primarily focused on patternrecognition, and may be trained after processing multiple examples. Themachine learning programs may include Bayesian program learning (BPL),image or object recognition, optical character recognition, pixelrecognition, and/or natural language processing—either individually orin combination. The machine learning programs may also include naturallanguage processing, semantic analysis, automatic reasoning, and/ormachine learning.

In supervised machine learning, a processing element may be providedwith example inputs and their associated outputs, and may seek todiscover a general rule that maps inputs to outputs, so that whensubsequent novel inputs are provided the processing element may, basedupon the discovered rule, accurately predict the correct output. Inunsupervised machine learning, the processing element may be required tofind its own structure in unlabeled example inputs. In one embodiment,machine learning techniques may be used to extract data about thehyperspectral system, one or more objects of interest in the image,background details, geolocation information, image data, and/or otherdata.

Based upon these analyses, the processing element may learn how toidentify characteristics and patterns that may then be applied toanalyzing sensor data, authentication data, image data, hyperspectralsystem data, and/or other data. For example, the processing element maylearn to identify a location or object based upon minimal information ordespite a misclassification by a user. The processing element may alsolearn how to identify different types of objects based upon differencesin the received hyperspectral data.

The computer-implemented methods discussed herein may includeadditional, less, or alternate actions, including those discussedelsewhere herein. The methods may be implemented via one or more localor remote processors, transceivers, servers, and/or sensors (such asprocessors, transceivers, servers, and/or sensors mounted on vehicles ormobile devices, or associated with smart infrastructure or remoteservers), and/or via computer-executable instructions stored onnon-transitory computer-readable media or medium. Additionally, thecomputer systems discussed herein may include additional, less, oralternate functionality, including that discussed elsewhere herein. Thecomputer systems discussed herein may include or be implemented viacomputer-executable instructions stored on non-transitorycomputer-readable media or medium.

As used herein, the term “non-transitory computer-readable media” isintended to be representative of any tangible computer-based deviceimplemented in any method or technology for short-term and long-termstorage of information, such as, computer-readable instructions, datastructures, program modules and sub-modules, or other data in anydevice. Therefore, the methods described herein may be encoded asexecutable instructions embodied in a tangible, non-transitory, computerreadable medium, including, without limitation, a storage device and/ora memory device. Such instructions, when executed by a processor, causethe processor to perform at least a portion of the methods describedherein. Moreover, as used herein, the term “non-transitorycomputer-readable media” includes all tangible, computer-readable media,including, without limitation, non-transitory computer storage devices,including, without limitation, volatile and nonvolatile media, andremovable and non-removable media such as a firmware, physical andvirtual storage, CD-ROMs, DVDs, and any other digital source such as anetwork or the Internet, as well as yet to be developed digital means,with the sole exception being a transitory, propagating signal.

As described above, the implementations described herein relate tosystems and methods for analyzing hyperspectral imagery, and morespecifically, to designing and training hyperspectral systems to meetmission parameters. More specifically, a hyperspectral analysis (“HA”)computer device determines the necessary attributes of a hyperspectralsystem to meet mission requirements. The HA computer device alsoefficiently trains the hyperspectral system to meet those missionrequirements by efficiently generating images in the spectral bandsnecessary to complete the mission.

The above-described methods and systems for hyperspectral analysis arecost-effective, secure, and highly reliable. The methods and systemsinclude determining hyperspectral system requirements during the designphase based on mission requirements, drastically reducing training timeto allow hyperspectral systems to reach mission requirements, andimproving the probability of successfully detecting items of interest.Furthermore, the above methods describe an alternative to generating afull hypercube “image-scene” for every combination that the user wishesto test. Instead, the systems and methods described herein describe amore cost-efficient and quicker method of training and analyzing ahyperspectral system by using random pixel distribution. Accordingly,the methods and systems facilitate improving the use and efficiency ofhyperspectral systems in a cost-effective and reliable manner.

This written description uses examples to disclose variousimplementations, including the best mode, and also to enable any personskilled in the art to practice the various implementations, includingmaking and using any devices or systems and performing any incorporatedmethods. The patentable scope of the disclosure is defined by theclaims, and may include other examples that occur to those skilled inthe art. Such other examples are intended to be within the scope of theclaims if they have structural elements that do not differ from theliteral language of the claims, or if they include equivalent structuralelements with insubstantial differences from the literal language of theclaims.

What is claimed is:
 1. A hyperspectral analysis computer devicecomprising at least one processor in communication with at least onememory device, said hyperspectral analysis computer device configuredto: store a plurality of spectral analysis data; receive, from a user,at least one background item and at least one item to be detected;generate one or more spectral bands for analysis based on the at leastone background item, the at least one item to be detected, and thestored plurality of spectral analysis data; receive, from the user, oneor more mission parameters; and determine a probability of success basedon the one or more mission parameters and the generated one or morespectral bands.
 2. A hyperspectral analysis computer device inaccordance with claim 1, wherein said hyperspectral analysis computerdevice is further configured to determine a probability of false alarmbased on the one or more mission parameters and the generated one ormore spectral bands.
 3. A hyperspectral analysis computer device inaccordance with claim 1, wherein said hyperspectral analysis computerdevice is further configured to determine a probability of detectionbased on the one or more mission parameters and the generated one ormore spectral bands.
 4. A hyperspectral analysis computer device inaccordance with claim 1, wherein said hyperspectral analysis computerdevice is further configured to: analyze an image containing the atleast one background item and the at least one item to be detected basedon the one or more spectral bands; and detect the at least one item tobe detected based on the analysis.
 5. A hyperspectral analysis computerdevice in accordance with claim 1, wherein said hyperspectral analysiscomputer device is further configured to generate a plurality of imagescontaining a plurality of random pixel mixtures associated with the atleast one background item to train a program to recognize the at leastone item to detect.
 6. A hyperspectral analysis computer device inaccordance with claim 1, wherein the one or more mission parametersincludes at least one of a maximum false alarm rate and a probability ofdetection.
 7. A hyperspectral analysis computer device in accordancewith claim 1, wherein the one or more mission parameters includes atleast one of minimum aperture size, waveband required, requiredwavelength range, minimum spectral resolution, integration time, groundsample distances, day or night operation, and maximum off-nadir angle.8. A hyperspectral analysis computer device in accordance with claim 7,wherein said hyperspectral analysis computer device is furtherconfigured to determine at least one of a mission altitude, an aperturesize, an off-nadir angle, and a resolution based on at least one of theprobability of success, the one or more mission parameters, and thegenerated one or more spectral bands.
 9. A method for analyzinghyperspectral imagery, said method implemented using a hyperspectralanalysis computer device, said hyperspectral analysis computer deviceincluding a processor in communication with a memory, said methodcomprising: storing, in the memory, a plurality of spectral analysisdata; receiving, from a user, at least one background item and at leastone item to be detected; generating, by the processor, one or morespectral bands for analysis based on the at least one background item,the at least one item to be detected, and the stored plurality ofspectral analysis data; receiving, from the user, one or more missionparameters; and determining, by the processor, a probability of successbased on the one or more mission parameters and the generated one ormore spectral bands.
 10. A method in accordance with claim 9 furthercomprising determining a probability of false alarm based on the one ormore mission parameters and the generated one or more spectral bands.11. A method in accordance with claim 9 further comprising determining aprobability of detection based on the one or more mission parameters andthe generated one or more spectral bands.
 12. A method in accordancewith claim 9 further comprising: analyzing an image containing the atleast one background item and the at least one item to be detected basedon the one or more spectral bands; and detecting the at least one itemto be detected based on the analysis.
 13. A method in accordance withclaim 9 further comprising generating a plurality of images containing aplurality of random pixel mixtures associated with the at least onebackground item to train a program to recognize the at least one item todetect.
 14. A method in accordance with claim 9, wherein the one or moremission parameters includes at least one of a maximum false alarm rateand a probability of detection.
 15. A method in accordance with claim 9,wherein the one or more mission parameters includes at least one ofminimum aperture size, waveband required, required wavelength range,minimum spectral resolution, integration time, ground sample distances,day or night operation, and maximum off-nadir angle.
 16. A method inaccordance with claim 15 further comprising determining at least one ofa mission altitude, an aperture size, an off-nadir angle, and aresolution based on at least one of the probability of success, the oneor more mission parameters, and the generated one or more spectralbands.
 17. At least one non-transitory computer-readable storage mediahaving computer-executable instructions embodied thereon, wherein whenexecuted by at least one processor, the computer-executable instructionscause the processor to: store a plurality of spectral analysis data;receive, from a user, at least one background item and at least one itemto be detected; generate one or more spectral bands for analysis basedon the at least one background item, the at least one item to bedetected, and the stored plurality of spectral analysis data; receive,from the user, one or more mission parameters; and determine aprobability of success based on the one or more mission parameters andthe generated one or more spectral bands.
 18. The computer-readablestorage media of claim 17, wherein the computer-executable instructionsfurther cause the processor to determine at least one of a probabilityof false alarm and a probability of detection based on the one or moremission parameters and the generated one or more spectral bands.
 19. Thecomputer-readable storage media of claim 17, wherein thecomputer-executable instructions further cause the processor to: analyzean image containing the at least one background item and the at leastone item to be detected based on the one or more spectral bands; anddetect the at least one item to be detected based on the analysis. 20.The computer-readable storage media of claim 17, wherein thecomputer-executable instructions further cause the processor to generatea plurality of images containing a plurality of random pixel mixturesassociated with the at least one background item to train a program torecognize the at least one item to detect.